package com.cd.music.annotation;

import org.springframework.core.Ordered;
import org.springframework.core.annotation.Order;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * @author yxl  余秀良
 * @description: 自定义注解，拦截接口请求次数等限制，防止机器刷
 * @date 17-10-18 下午12:17
 * @address: 四川成都
 */
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Target(ElementType.METHOD)
@Order(Ordered.HIGHEST_PRECEDENCE)//最高优先级
public @interface RequestLimit {
    /**
     * @description: ip允许访问的次数，默认值为最大值
     * @author yxl  余秀良
     * @date 17-10-18 下午2:39
     * @address: 四川成都
     */
    int count() default Integer.MAX_VALUE;

    /**
     * @description: ip时间段，单位为毫秒，默认值一分钟
     * @author yxl  余秀良
     * @date 17-10-18 下午2:39
     * @address: 四川成都
     */
    long time() default 60000;
}
